Structure design generation for fixing metal tip-to-tip across cell boundary

ABSTRACT

A method for structure design including a processor performing error processing of an initial design file layout. The processor detects a structure design violation at a design cell boundary for a metal layer above (Ma) a via (Vx) at a tip of the Ma for the initial design file layout for a semiconductor structure based on a library of pattern rules. Upon detection of the structure design violation, the processor retargets the Vx for generating a resulting design file layout of the semiconductor structure. A physical semiconductor structure is generated based on the resulting design file layout of the semiconductor structure.

BACKGROUND

Designing of integrated circuit (IC) structures on a wafer often relieson photolithography. Photolithographic processes can be used to transfera pattern of a photomask to a wafer. Feature size, line width, and theseparation between features and lines are becoming increasingly smaller.

IC devices are formed in layers with interconnect structures, such astrenches and vias that are used to form interlayer connections betweenfeatures, such as lines. For example, a via may be used to connect aline feature, such as a gate electrode, in a first layer to a metal linefeature in another layer formed above the first layer. The accuracy atwhich the interconnect structures align with underlying features affectsthe functionality of the device.

SUMMARY

Embodiments relate to structure design flow that includes retargetingany of a metal layer above, a metal layer below a via, and the viaconnecting the metal above and the metal below. In one embodiment, amethod includes a processor performing error processing of an initialdesign file layout. The processor detects a structure design violationat a design cell boundary for a metal layer above (Ma) a via (Vx) at atip of the Ma for the initial design file layout for a semiconductorstructure based on a library of pattern rules. Upon detection of thestructure design violation, the processor retargets the Vx forgenerating a resulting design file layout of the semiconductorstructure. A physical semiconductor structure is generated based on theresulting design file layout of the semiconductor structure.

These and other features, aspects and advantages of the embodiments willbecome understood with reference to the following description, appendedclaims and accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a computing environment for generating semiconductordesigns, according to an embodiment;

FIG. 2 shows an example via design graphic for metal layers above andbelow;

FIG. 3 shows an example graphic showing a cell boundary for via design;

FIG. 4 shows an example product on record (POR) for an A×B enclosure toline end of metal below;

FIG. 5 shows an example POR for an A×C enclosure to line end of metalabove;

FIG. 6 shows an example POR for a via enclosure to metal line end ofboth metal above and metal below;

FIG. 7 shows a block diagram for a processing system for semiconductordesign with metal layer above, metal layer below and via retargeting,according to an embodiment;

FIG. 8A shows a block diagram for semiconductor structure designprocessing for via, metal above, metal below retargeting, according toan embodiment;

FIG. 8B shows an example design graphic to assist in understanding ofthe semiconductor structure design processing of FIG. 8A;

FIG. 9 shows a block diagram for a process for semiconductor structuredesign, according to one embodiment; and

FIG. 10 shows a high level block diagram showing an informationprocessing system, according to one embodiment.

DETAILED DESCRIPTION

The descriptions of the various embodiments have been presented forpurposes of illustration, but are not intended to be exhaustive orlimited to the embodiments disclosed. Many modifications and variationswill be apparent to those of ordinary skill in the art without departingfrom the scope and spirit of the described embodiments. The terminologyused herein was chosen to best explain the principles of theembodiments, the practical application or technical improvement overtechnologies found in the marketplace, or to enable others of ordinaryskill in the art to understand the embodiments disclosed herein.

Embodiments relate to integrated circuit (IC) structure design flow, inparticular, for structure design flow that includes retargeting both ametal layer above and/or a metal layer below a via, and/or the viaconnecting them for a self-aligned via process to avoid insertion ofdummy cell at cell boundary at the penalty of area waste.

FIG. 1 shows a computing environment for generating semiconductordesigns, according to an embodiment. In one embodiment, the designsystem 100 includes a processor 105 communicating with storage 110 overa bus system 115 or through a wireless network. The storage 110 mayinclude a hard disk and/or random access memory (RAM) and/or removablestorage, such as a magnetic disk 120, an optical disk 125, or any otherremovable device (e.g., a universal serial bus (USB device), a flashdevice, etc.). The storage 110 includes an operating system (OS) 130,user interface software 135, and a design application 165 (e.g., adesign for manufacturing (DFM) application, etc.). The user interfacesoftware 135, in conjunction with a display 140, implements a userinterface 145. The user interface 145 may include peripheral I/0 devicessuch as a keypad or keyboard 150, pointing device/mouse 155, etc. Theprocessor 105 runs under the control of the OS 130, which may be aconventional OS or proprietary OS. The design application 165 is invokedby the OS 130 upon power up, reset, user interaction, etc., depending onthe implementation of the OS 130. A user may invoke the designapplication 165 in conventional fashion through the user interface 145.Note that although a stand-alone design system 100 is illustrated, thereis no need for the data to reside on the same design system 100 as thedesign application 165 by which it is processed. In one example, thedesign application 165 may include multiple components that may resideon different design systems 100. Some embodiments may be implemented ona distributed computing system with distributed storage and/orprocessing capabilities.

In one embodiment, the design application 165 may be executed by thedesign system 100 to design semiconductor devices and retarget shapes inthe layout to improve semiconductor structure design. Data for thesemiconductor structure design may be stored on a computer readablestorage device (e.g., storage 110, disks 120, 125, solid state storage,etc.).

In one embodiment, a process flow for the design system 100 inimplementing the design activities of the design application 165 isillustrated in FIG. 8A and the process of FIG. 9. The design system 100implementing the design application 165 may be processed using system700. Inputs to the processing system 700 (FIG. 7) may include a designlayout file and a library of pattern rules stored in the memory 720,which may include design rules for pattern checking and tables forretargeting. In one example, a design layout file is checked for designrule errors prior to the design processing of process 700.

FIG. 2 shows an example via design graphic 200 for a metal layer above210 a via 250 and a metal layer below 220 the via 250. Also depicted arethe enclosure to the metal below 240 and the enclosure to the metalabove 230. Line end (LE) critical dimension (CD) uniformity (CDU) doesnot scale with CD. That is, the opposite occurs, such as extremeultra-violet (EUV) LE CDU. The consequences may lead to larger metal-viaenclosure value to ensure via-metal contact area, and may include:requirement from reliability; LE two-dimension (2D) effects makingdesign more complicated; large enclosure for metal above and below arerequired to ensure manufacturability as well as performance.

FIG. 3 shows an example graphic 300 showing a cell boundary 310 for via250 design. The graphic 300 shows the cell boundary 310, metal layerbelow 325, metal layer above 320 (and 330 for the cell on the right sideof the graphic 300), via 250, enclosure to metal below 340 (and 360 forthe cell on the right side of the graphic 300) and tip-to-tip (T2T)space 350 between the two cells.

In the design of semiconductor vias, metal LE CDU has an impact to bothmetal T2T and metal-via enclosure value. A large metal-via enclosurevalue has scaling impact, especially at a cell boundary. One consequenceresults with a larger metal-via enclosure value to ensure via-metalcontact area. A large LE CDU also means a larger T2T space 350 isneeded. This leads to an impact in density scaling and results inlimited choices for a designer, especially at the cell boundary 310 as adesigner has to use dummy cell placement that wastes area and could leadto unpredictable performance of an integrated circuit (IC).

Some of the challenges of LE CDU control for semiconductor design arethat CDU does not scale; LE CDU have been observed to increase. Thesmaller the width, the larger the LE CDU (even with EUV) due to poorimage quality at LE. This leads to a larger T2T space 350 and/or largertip-to-side (T2S) space. There are competing concerns, such as metal T2Tversus via contact area. T2T space 350 is an immediate short fail, andvia contact area reliability; there may be room to compromise but it maylead to other issues.

FIG. 4 shows an example graphic of a product on record (POR) 400 for anA×B sized enclosure to metal below. In one example, A×B may be 0×0.0XX,where X is a positive integer. This example shows a case for landing onLE of metal below that is a candidate for retargeting. In the POR 400, avia is referenced as 430, the metal below is referenced as 420 and themetal above is referenced as 410.

FIG. 5 shows an example POR 500 for an A×C enclosure to metal above.This example shows a case for landing on LE of metal above that is acandidate for retargeting. In one example, C is an integer and greaterthan B in FIG. 4. In the POR 500, the metal below is referenced as 520and the reference of the metal above is referenced as 510.

FIG. 6 shows an example POR 600 for an A×C enclosure for metal below 620having a size A×B. This example shows a case for landing on LE of bothmetal above and metal below that is a candidate for retargeting. In thePOR 600, the metal above is referenced as 610.

FIG. 7 shows a block diagram for a processing system 700 forsemiconductor design with metal layer above, metal layer below and viaretargeting, according to an embodiment. In one embodiment, theprocessing system includes a metal above jogging processor 710, a metalbelow jogging processor 715, one or more memory devices 720 and viaretarget processor 730. The one or more memory devices 720 may includeone or more non-removable and/or removable memory devices (e.g., storagedisk devices, storage systems, distributed file systems, cloud-basedstorage systems, removable memory device(s), etc.). Enlarging the viaalone does not help the 3σ area due to self-aligned via (SAV).Therefore, in some embodiments metal above jogging for SAV retargetingmay be performed by the metal above jogging processor 710. In anotherembodiment, both via jogging and metal below jogging may be performed bythe via retarget processor 730 with the metal below jogging processor715. In yet another embodiment, if both metal above and below is LE,then processing system performs jogging of the metal above, the metalbelow and the via using the metal above jogging processor 710, the metalbelow jogging processor 715 and the via retarget processor 730.

In conventional design, metal jogging may not be preferred by a designteam due to complex shape to support by patterning, short concerns, andcomplex rules. However, in one embodiment, metal jogging is acceptableto support a limited use case, especially with achieved benefits. Insome embodiments, the processing system provides metal jogging as anopportunistic approach where: metal jogging is used for non-standardground rule (GR)-clean shapes and shape after the flow is low risk.

FIG. 8A shows a block diagram 800 for semiconductor structure designprocessing for via, metal above, metal below retargeting, according toan embodiment. FIG. 8B shows an example design graphic to assist inunderstanding of the semiconductor structure design processing of FIG.8A. In one embodiment, in block 810 a processor (e.g., processor 105,FIG. 1, processor 1005, FIG. 10) detects a T2T structure design ruleviolation for a metal layer above (Ma) a via (Vx) at a tip of the Ma fora design file layout for the semiconductor structure being designed.Once the T2T structure design rule violation is detected, in block 820the processor determines if the Vx is at the metal LE. In one example,if the Vx is not at the metal LE, the processing continues to block 825where the T2T rule (e.g., requirement values) is relaxed (e.g., so thatthe T2T rule would not be violated for the semiconductor structuredesign). In one example, the relaxing of the T2T rule may be made aftercell placement and may include a small layout fix at the T2T space,where the design rule check (DRC) does not have to be performed again.

In one embodiment, in block 820 if the processor determines that the Vxis at a metal LE, the processing proceeds to block 830 where theprocessor sets the T2T design value for the design file layout for thesemiconductor structure and analyzes the Ma, the Vx and the metal layer(Mb) below the Vx that connects the Ma through the Vx to determinewhether the Mb is at a metal LE. The processing continues to block 835where the processor determines whether the Mb is at a metal LE. If theprocessor determines that the Mb is at the metal LE, the processingproceeds to block 840. In block 840, the processor determines whetherthe Ma available space at a common edge (E_VxMa) between the Ma and theVx is greater than the minimum allowable space for the Ma and that theMb available space at a common edge (E_VxMb) between the Mb and the Vxis greater than the Mb minimum space. If the processor determines thatthe outcome of the determination in block 840 is not true, then theprocessing proceeds to block 860 and the processor inserts a dummy trackinto the design file layout for the structure. If the processordetermines that the outcome of the determination in block 840 is true,the processing proceeds to block 845.

In block 845, the processor performs via retargeting including joggingthe design value for the Ma and for the Mb and retargeting the designvalue for the Vx and proceeds to run a ground rule calculation designprocessing or uses pre-computed values determined by a designer andstored in memory (e.g., a memory device 720). In one embodiment,processing 800 proceeds to block 850 where the processor determineswhether the via design falls within the 3σ area. If the processordetermines that the via design falls within the 3σ area, processing 800proceeds to block 855 where the structure design is found to be withindesired values and the structure design layout is stored in the memory.If the processor determines that the via design does not fall within the3σ area, the processing returns to block 835.

In block 835, if the processor determines that the Mb is not at a metalLE, the processing proceeds to block 870. In one embodiment, in block870 it is determined whether the Mb available space at E_VxMb is greaterthan a minimum allowable space for the Mb. If the determination in block870 is true, the processor performs jogging a design value for the Mband proceeds to block 845. Upon the processor determining that the Mbavailable space at E_VxMb is not greater than a minimum allowable spacefor the Mb, the processing proceeds to block 865.

In one embodiment, in block 865 the processor determines if the Maavailable space at E_VxMa is greater than a minimum allowable space forthe Ma. If the processor determines that the Ma available space atE_VxMa is greater than a minimum allowable space for the Ma, theprocessor performs jogging a design value for the Ma and the processingproceeds to block 845. If the processor determines that the Ma availablespace at E_VxMa is not greater than a minimum allowable space for theMa, the processing continues to block 860. The result of processing thatleads to block 855 for the design file layout of the structure improvesperformance of the structure based on fixing metal tip or metal endingacross cell boundaries. In one embodiment, the retargeting of the Vxcomprises retargeting metal below the Vx in a vertical direction toavoid Vx metal shorting.

FIG. 9 shows a block diagram for a process 900 for semiconductorstructure design, according to one embodiment. In one embodiment, inblock 910 process 900 includes detecting, by a processor (e.g.,processor 105, FIG. 1, processor 1005, FIG. 10), a T2T structure designviolation at a design cell boundary for a Ma above a Vx at a tip of theMa for a design file layout for the structure. In block 920 upondetection of the T2T structure design violation, process 900 retargets,by the processor, the Vx based on adjusting any of the Ma, a Mb belowthe Vx that connects the Ma through the Vx and the Vx that connects theMa and the Mb for the design file layout of the structure to improveperformance of the structure based on fixing metal tip or metal endingacross cell boundaries.

In one embodiment, process 900 may further include determining whetherthe Vx is at a first metal LE. Upon the Vx being at the metal LE, theprocess 900 may set the T2T design value for the design file layout forthe structure and analyze the Ma, the Vx and the Mb to determine whetherthe Mb is at a second metal LE. In another embodiment, process 900 mayinclude that upon the Vx not being at the first metal LE, relaxing T2Trequirement values for the design file layout for the structure.

In one embodiment, process 900 may further include upon a determinationthat the Mb is not at the second metal LE, determining the Mb availablespace at E_VxMb between the Mb and the Vx. In another embodiment, upon adetermination that the Mb available space at E_VxMb is greater than aminimum allowable space for the Mb, process 900 may perform jogging adesign value for the Mb, retargeting a design value for the Vx andexecuting a design process or using a first set of predetermined designvalues. Upon a determination that the Mb available space at E_VxMb isnot greater than a minimum allowable space for the Mb, then upon adetermination that the Ma available space at E_VxMa between the Ma andthe Vx is greater than a minimum allowable space for the Ma, process 900may perform jogging a design value for the Ma, retargeting the designvalue for the Vx and executing the design process or using a second setof predetermined design values.

In one embodiment, process 900 may further include that upon adetermination that the Mb is at the second metal LE, upon adetermination that the Ma available space at E_VxMa is greater than theminimum allowable space for the Ma and the Mb available space at E_VxMbis greater than the Mb minimum space, the processor performs jogging thedesign value for the Ma and for the Mb, retargets the design value forthe Vx and executes the design process or using a third set ofpredetermined design values. Process 900 may include that upon adetermination that the Mb is at the second metal LE, process 900 maycontinue by inserting a dummy track into the design file layout for thestructure.

In one embodiment, process 900 may include that the retargeting of theVx includes only retargeting metal below the Vx in a vertical directionto avoid Vx metal shorting. Process 900 may include that upon adetermination that a resulting design file layout for the structurefalls outside of a three sigma area for the Vx, re-determining whetherthe Mb is at the second metal LE, otherwise outputting a final designfile layout for the structure.

FIG. 10 is a high level block diagram showing an information processingsystem 1000 useful for implementing one or more embodiments (e.g.,processing system 700, processing 800, process 900, etc.). The computersystem includes one or more processors, such as processor 1002. In oneembodiment, the processor 1002 may function similarly as processor 105(FIG. 1). The processor 1002 is connected to a communicationinfrastructure 1004 (e.g., a communications bus, cross-over bar, ornetwork). In one embodiment, the processor 1002 provides detection of astructure design violation at a design cell boundary for a metal layerabove (Ma) a via (Vx) at a tip of the Ma for generating a design filelayout for the structure. The processor 1002 may further provide, upondetection of the structure design violation, retargeting of designvalues for the Vx based on adjusting design values for any of the Ma, ametal layer (Mb) below the Vx that connects the Ma through the Vx andthe Vx that connects the Ma and the Mb for the design file layout of thestructure. The processor 1002 adjusts design values of both the Ma andthe Mb to provide fixing metal tip or metal ending across cellboundaries.

The computer system can include a display interface 1006 that forwardsgraphics, text, and other data from the communication infrastructure1004 (or from a frame buffer not shown) for display on a display unit1008. The computer system also includes a main memory 1010, preferablyrandom access memory (RAM), and may also include a secondary memory1012. The secondary memory 1012 may include, for example, a hard diskdrive 1014 and/or a removable storage drive 1016, representing, forexample, a floppy disk drive, a magnetic tape drive, or an optical diskdrive. The removable storage drive 1016 reads from and/or writes to aremovable storage unit 1018 in a manner well known to those havingordinary skill in the art. Removable storage unit 1018 represents, forexample, a floppy disk, a compact disc, a magnetic tape, or an opticaldisk, etc. which is read by and written to by removable storage drive1016. As will be appreciated, the removable storage unit 1018 includes acomputer readable medium having stored therein computer software and/ordata.

In alternative embodiments, the secondary memory 1012 may include othersimilar means for allowing computer programs or other instructions to beloaded into the computer system. Such means may include, for example, aremovable storage unit 1020 and an interface 1022. Examples of suchmeans may include a program package and package interface (such as thatfound in video game devices), a removable memory chip (such as an EPROM,or PROM) and associated socket, and other removable storage units 1020and interfaces 1022, which allows software and data to be transferredfrom the removable storage unit 1020 to the computer system.

The computer system may also include a communication interface 1024.Communication interface 1024 allows software and data to be transferredbetween the computer system and external devices. Examples ofcommunication interface 1024 may include a modem, a network interface(such as an Ethernet card), a communication port, or a PCMCIA slot andcard, etc. Software and data transferred via communication interface1024 are in the form of signals which may be, for example, electronic,electromagnetic, optical, or other signals capable of being received bycommunication interface 1024. These signals are provided tocommunication interface 1024 via a communication path (i.e., channel)1026. This communication path 1026 carries signals and may beimplemented using wire or cable, fiber optics, a phone line, a cellularphone link, an RF link, and/or other communication channels.

As will be appreciated by one skilled in the art, aspects of theembodiments may be embodied as a system, method or computer programproduct. Accordingly, aspects of one or more embodiments may take theform of an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of one or more embodiments may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of theembodiments may be written in any combination of one or more programminglanguages, including an object oriented programming language such asJava, Smalltalk, C++ or the like and conventional procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The program code may execute entirely on the user's computer,partly on the user's computer, as a stand-alone software package, partlyon the user's computer and partly on a remote computer or entirely onthe remote computer or server. In the latter scenario, the remotecomputer may be connected to the user's computer through any type ofnetwork, including a local area network (LAN) or a wide area network(WAN), or the connection may be made to an external computer (forexample, through the Internet using an Internet Service Provider).

Aspects of the embodiments are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to one or moreembodiments. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments. In this regard, each block in the flowchart or blockdiagrams may represent a module, segment, or portion of instructions,which comprises one or more executable instructions for implementing thespecified logical function(s). In some alternative implementations, thefunctions noted in the block may occur out of the order noted in thefigures. For example, two blocks shown in succession may, in fact, beexecuted substantially concurrently, or the blocks may sometimes beexecuted in the reverse order, depending upon the functionalityinvolved. It will also be noted that each block of the block diagramsand/or flowchart illustration, and combinations of blocks in the blockdiagrams and/or flowchart illustration, can be implemented by specialpurpose hardware-based systems that perform the specified functions oracts or carry out combinations of special purpose hardware and computerinstructions.

References in the claims to an element in the singular is not intendedto mean “one and only” unless explicitly so stated, but rather “one ormore.” All structural and functional equivalents to the elements of theabove-described exemplary embodiments that are currently known or latercome to be known to those of ordinary skill in the art are intended tobe encompassed by the present claims. No claim element herein is to beconstrued under the provisions of 35 U.S.C. section 112, sixthparagraph, unless the element is expressly recited using the phrase“means for” or “step for.”

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the embodiments.As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the embodiments has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the embodiments in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the embodiments. Theembodiments were chosen and described in order to best explainprinciples and the practical application, and to enable others ofordinary skill in the art to understand the various embodiments withvarious modifications as are suited to the particular use contemplated.

What is claimed is:
 1. A method for semiconductor structure designcomprising: performing, by a processor, error processing of an initialdesign file layout; detecting, by the processor, a structure designviolation at a design cell boundary for a metal layer above (Ma) a via(Vx) at a tip of the Ma for the initial design file layout for asemiconductor structure based on a library of pattern rules; upondetection of the structure design violation, retargeting, by theprocessor, the Vx for generating a resulting design file layout of thesemiconductor structure; and generating a physical semiconductorstructure based on the resulting design file layout of the semiconductorstructure.
 2. The method of claim 1, wherein the structure designviolation comprises a tip-to-tip (T2T) structure design violation, andthe error processing uses the library of pattern rules that comprisesdesign rules for pattern checking and retargeting tables.
 3. The methodof claim 2, wherein retargeting the Vx is based on adjusting any of theMa, a metal layer (Mb) below the Vx that connects the Ma through the Vxand the Vx that connects the Ma and the Mb.
 4. The method of claim 3,further comprising: determining whether the Vx is at a first metal lineend (LE); upon the Vx being at the metal LE, setting a T2T design valuefor the resulting design file layout for the semiconductor structure;analyzing the Ma, the Vx and the Mb to determine whether the Mb is at asecond metal LE; and upon the Vx not being at the first metal LE,relaxing T2T requirement values for the initial design file layout forthe semiconductor structure.
 5. The method of claim 4, furthercomprising: upon a determination that the Mb is not at the second metalLE, determining the Mb available space at a common edge (E_VxMb) betweenthe Mb and the Vx; and upon a determination that the Mb available spaceat E_VxMb is greater than a minimum allowable space for the Mb, jogginga design value for the Mb, retargeting a design value for the Vx usingthe retargeting tables and executing a design process or using a firstset of predetermined design values, otherwise upon a determination thatthe Ma available space at a common edge (E_VxMa) between the Ma and theVx is greater than a minimum allowable space for the Ma, jogging adesign value for the Ma, retargeting the design value for the Vx usingthe retargeting tables and executing the design process or using asecond set of predetermined design values.
 6. The method of claim 4,further comprising: upon a determination that the Mb is at the secondmetal LE, upon a determination that the Ma available space at E_VxMa isgreater than the minimum allowable space for the Ma and the Mb availablespace at E_VxMb is greater than the Mb minimum space, jogging the designvalue for the Ma and for the Mb, retargeting the design value for the Vxusing the retargeting tables and executing the design process or using athird set of predetermined design values, otherwise inserting a dummytrack into the initial design file layout for the semiconductorstructure, wherein the retargeting of the Vx comprises retargeting,using the retargeting tables, metal below the Vx in a vertical directionto avoid Vx metal shorting.
 7. The method of claim 6, furthercomprising: upon a determination that the resulting design file layoutfor the semiconductor structure falls outside of a three sigma area forthe Vx, re-determining whether the Mb is at the second metal LE,otherwise outputting the resulting design file layout as a final designfile layout for the semiconductor structure.
 8. A computer programproduct for generating a semiconductor structure design, the computerprogram product comprising a computer readable storage device havingprogram instructions embodied therewith, the program instructionsexecutable by a computer to cause the computer to: performing, by thecomputer, error processing of an initial design file layout; detect, bythe computer, a structure design violation at a design cell boundary fora metal layer above (Ma) a via (Vx) at a tip of the Ma for the initialdesign file layout for a semiconductor structure based on a library ofpattern rules; upon detection of the structure design violation,retarget the Vx for generating a resulting design file layout of thesemiconductor structure; and generate, by the computer, a physicalsemiconductor structure based on the resulting design file layout of thesemiconductor structure.
 9. The computer program product of claim 8,wherein the structure design violation comprises a tip-to-tip (T2T)structure design violation, the error processing uses the library ofpattern rules that comprises design rules for pattern checking andretargeting tables. and retarget of the Vx is based on adjusting any ofthe Ma, a metal layer (Mb) below the Vx that connects the Ma through theVx and the Vx that connects the Ma and the Mb.
 10. The computer programproduct of claim 9, wherein the program instructions executable by thecomputer to further cause the computer to: determine, by the computer,whether the Vx is at a first metal line end (LE); upon the Vx being atthe metal LE, set, by the computer, the T2T design value for the designfile layout for the semiconductor structure; analyze, by the computer,the Ma, the Vx and the Mb to determine whether the Mb is at a secondmetal LE; and. upon the Vx not being at the first metal LE, relax, bythe computer, T2T requirement values for the initial design file layoutfor the semiconductor structure.
 11. The computer program product ofclaim 10, wherein the program instructions executable by the computer tofurther cause the computer to: upon a determination that the Mb is notat the second metal LE, determine, by the computer, the Mb availablespace at a common edge (E_VxMb) between the Mb and the Vx; and upon adetermination that the Mb available space at E_VxMb is greater than aminimum allowable space for the Mb, jog, by the computer, a design valuefor the Mb, retarget a design value using the retargeting tables for theVx and execute, by the computer, a design process or using a first setof predetermined design values, otherwise upon a determination that theMa available space at a common edge (E_VxMa) between the Ma and the Vxis greater than a minimum allowable space for the Ma, jog, by thecomputer, a design value for the Ma, retarget the design value using theretargeting tables for the Vx and execute, by the computer, the designprocess or using a second set of predetermined design values.
 12. Thecomputer program product of claim 10, wherein the program instructionsexecutable by the computer to further cause the computer to: upon adetermination that the Mb is at the second metal LE and upon adetermination that the Ma available space at E_VxMa is greater than theminimum allowable space for the Ma and the Mb available space at E_VxMbis greater than the Mb minimum space, jog, by the computer, the designvalue for the Ma and for the Mb, retarget using the retargeting tables,by the computer, the design value for the Vx and execute, by thecomputer, the design process or using a third set of predetermineddesign values, otherwise insert, by the computer, a dummy track into theinitial design file layout for the semiconductor structure.
 13. Thecomputer program product of claim 10, wherein the retarget of the Vxcomprises retarget, using the retargeting tables, metal below the Vx ina vertical direction to avoid Vx metal shorting.
 14. The computerprogram product of claim 13, wherein the program instructions executableby the computer to further cause the computer to: upon a determinationthat the resulting design file layout for the semiconductor structurefalls outside of a three sigma area for the Vx, re-determine, by thecomputer, whether the Mb is at the second metal LE, otherwise output, bythe computer, the resulting design file layout as a final design filelayout for the semiconductor structure.
 15. A method for generating asemiconductor structure design comprising: performing, by a processor,error processing of an initial design file layout using a library ofpattern rules; detecting, by the processor, a tip-to-tip (T2T) structuredesign violation at a design cell boundary for a metal layer above (Ma)a via (Vx) at a tip of the Ma for the initial design file layout for thesemiconductor structure based on pattern checking using the library ofpattern rules; upon detection of the T2T structure design violation,retargeting using the retargeting tables, by the processor, designvalues for the Vx for generating a resulting design file layout of thesemiconductor structure; and generating a physical semiconductorstructure based on the resulting design file layout of the semiconductorstructure.
 16. The method of claim 15, wherein the library of patternrules comprises design rules for pattern checking and retargetingtables.
 17. The method of claim 16, wherein retargeting the designvalues for the Vx is based on adjusting design values for any of the Ma,a metal layer (Mb) below the Vx that connects the Ma through the Vx andthe Vx that connects the Ma and the Mb, and adjusting design values ofboth the Ma and the Mb provide fixing metal tip or metal ending acrosscell boundaries.
 18. The method of claim 17, further comprising:determining whether the design values for the Vx is at a first metalline end (LE); upon the design values for the Vx being at the metal LE,setting a T2T design value for the resulting design file layout for thesemiconductor structure; analyzing the design values for the Ma, the Vxand the Mb to determine whether the design values for the Mb are at asecond metal LE; and upon the Vx not being at the first metal LE,relaxing T2T requirement values for the initial design file layout forthe semiconductor structure.
 19. The method of claim 18, furthercomprising: upon a determination that the design values of the Mb arenot at the second metal LE, determining the Mb available space at acommon edge (E_VxMb) between the Mb and the Vx; and upon a determinationthat the Mb available space at E_VxMb is greater than a minimumallowable space for the Mb, jogging design values for the Mb,retargeting design values for the Vx using the retargeting tables andexecuting a design process or using a first set of predetermined designvalues, otherwise upon a determination that the Ma available space at acommon edge (E_VxMa) between the Ma and the Vx is greater than a minimumallowable space for the Ma, jogging design values for the Ma,retargeting the design values for the Vx using the retargeting tablesand executing the design process or using a second set of predetermineddesign values.
 20. The method of claim 18, further comprising: upon adetermination that the Mb is at the second metal LE, upon adetermination that the Ma available space at E_VxMa is greater than theminimum allowable space for the Ma and the Mb available space at E_VxMbis greater than the Mb minimum space, jogging the design values for theMa and for the Mb, retargeting the design values for the Vx using theretargeting tables and executing the design process or using a third setof predetermined design values, otherwise inserting a dummy track intothe initial design file layout for the semiconductor structure; and upona determination that the resulting design file layout for thesemiconductor structure falls outside of a three sigma area for the Vx,re-determining whether the Mb is at the second metal LE, otherwiseoutputting the resulting design file layout as a final design filelayout for the semiconductor structure, wherein the retargeting of thedesign values for the Vx comprises retargeting, using the retargetingtables, design values for metal below the Vx in a vertical direction toavoid Vx metal shorting.